package ru.mirent.entity.listeners.event;

import ru.mirent.entity.Observer;
import ru.mirent.entity.notifications.FixtureNotification;

import java.util.Arrays;
import java.util.List;

/**
 * Слушатель нескольких событий.
 */
public abstract class MultipleNotificationListener implements Observer {
    /**
     * Список типов уведомлений, которые обрабатывает наблюдатель.
     */
    private List<Class<? extends FixtureNotification>> notificationsList;

    @SafeVarargs
    public MultipleNotificationListener(Class<? extends FixtureNotification>... notificationsList) {
        this.notificationsList = Arrays.asList(notificationsList);
    }

    /**
     * Получить список обрабатываемых событий.
     * @return список событий
     */
    public List<Class<? extends FixtureNotification>> getNotificationsList() {
        return notificationsList;
    }
}
